package com.itheima.map;

import java.util.*;

/*
* 输入字符串，统计每个字符串的次数，并打印出来
* */
public class HashMapDemo {
    public static void main(String[] args) {
//创建hashmap集合对象
        //HashMap<Character,Integer>  hm=new  HashMap<Character,Integer>(); //结果是无序的
        TreeMap<Character,Integer> hm=new TreeMap<Character,Integer>();//结果是有序的
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入字符串：");
        String nextLine = sc.nextLine();
        for (int i = 0; i <nextLine.length() ; i++) {
            char c = nextLine.charAt(i);//获取字符串的每个字符
            Integer in = hm.get(c);//根据键获取值  判断是否存在
            if(in==null){
                //说明不存在
                hm.put(c,1);
            }else{
                in++;
                hm.put(c,in);
            }
        }
        //遍历map集合
        StringBuilder sb=new StringBuilder();
        //先将键 存在set集合  在遍历set集合  获取键，在通过get方法得到值
        Set<Character> s=hm.keySet();
        for (Character c: s) {
            Integer value = hm.get(c);
            //字符串拼接 append（）
         sb.append(c).append("(").append(value).append(")");
        }
        //将StringBuilder类型转化为String类型  使用toString方法
        String s1 = sb.toString();
        System.out.println(s1);
    }
}
